Supplementary Code S1
====================

Title:
Reference numerical implementation for sulfolane diffusion with clustering and sorption

Associated manuscript:
"Diffusion-Limited Penetration of Sulfolane into Fractured Porous Media:
Roles of Clustering, Sorption, and Ionic Strength"

Description:
This package provides a reference Python implementation of the numerical methods
used in the manuscript. The code is intended to support reproducibility and
methodological transparency. It is not optimized for performance.

Contents:
1) sulfolane_model_reference.py
   - Nonlinear finite-difference solver for spatial concentration profiles
     (Figures 2, S1, S2)
   - Semi-analytical diffusion solver using Duhamel's principle for time traces
     at fixed depths (Figure 3)

Software requirements:
- Python >= 3.9
- numpy
- matplotlib
- pillow (PIL)

Execution:
Run from the command line:
    python sulfolane_model_reference.py

The script will generate example PNG and TIFF figures corresponding to the
model outputs described in the manuscript.

Reproducibility:
All physical and numerical parameters are defined explicitly within the script.
Parameter values used in the manuscript correspond to those listed in Table 1.

Disclaimer:
This code is provided for scientific transparency and educational use.
Users are responsible for validating modifications or extensions of the model.

Contact:
Correspondence regarding this code should be addressed to the corresponding
author of the manuscript.
